#ifndef __HALALGDES_H__
#define __HALALGDES_H__

#include <Utils/Type.h>
	#define HALALGDES1_MODE_ECB	 0x80000211L
	#define HALALGDES1_MODE_CBC	 0x80000212L
	#define HALALGDES2_MODE_ECB  0x80000221L
	#define HALALGDES2_MODE_CBC  0x80000222L
	#define HALALGDES3_MODE_ECB	 0x80000241L
	#define HALALGDES3_MODE_CBC	 0x80000242L

	extern UINT32 HalAlgDES_Init(UINT8 Key[],UINT8 KLen,UINT8 IV[]);
	extern UINT32 HalAlgDES_Encrypt_Update(UINT32 Mode,UINT8 *pInBuf, UINT16 nSize,UINT8* pOutBuf);
	extern UINT32 HalAlgDES_Decrypt_Update(UINT32 Mode,UINT8 *pInBuf, UINT16 nSize,UINT8* pOutBuf);
	extern UINT32 HalAlgDES_Final(void);

#endif
